package com.liuwei.spring.cloud.common.enums;

/**
 * @author : evan.liu
 * @version V1.0
 * @Description: 枚举基本类,用于提供全局枚举方法
 * @date Date : 2022年05月06日 1:28 下午
 */
public interface I18nEnum {
    /**
     * 继承 Enum 方法
     * @return
     */
    int ordinal();

    /**
     * 继承 Enum 方法
     * @return
     */
    String name();

    /**
     * 获取 code
     * @return
     */
    int getCode();

    /**
     * 获取描述
     * @return
     */
    String getMessage();

    /**
     * 枚举值分类(将某几个枚举归类为用一组)
     * 扩展: 不使用的情况下默认为: Default
     * @return
     */
    default String getGroup(){
        return "Default";
    }

    /**
     * 扩展字段,备用
     * @return
     */
    default String getExt(){
        return "";
    }

    /**
     * 根据 Code 获取国际化信息
     * @return
     */
    default String getLocalizedMessage(){
        return "";
    }
}